package com.vehicle.common.service.dao;

import java.util.List;
import java.util.Map;

/**
 * Created by yantingbin on 2017/7/7.
 */
public interface CrudDao<T> extends BaseDao {
    /**
     * 获取单条数据
     * @param id 主键
     * @return T t
     */
   T get(String id);

    /**
     * 获取单条数据
     * @param entity
     * @return T t
     */
   T get(T entity);

    /**
     * 查询数据列表
     * @param entity
     * @return
     */
   List<T> findList(T entity);

    /**
     * 查询数据列表
     * @param queryMap
     * @return
     */
   List<T> queryList(Map<String,Object> queryMap);

    /**
     * 查询所有数据列表
     * @return
     */
   List<T> findAllList();

    /**
     * 插入数据
     * @param entity
     * @return
     */
   int insert(T entity);

    /**
     * 更新数据
     * @param entity
     * @return
     */
   int update(T entity);

    /**
     * 删除数据
     * @param entity
     * @return
     */
   int delete(T entity);

    /**
     * 删除数据
     * @param id
     * @return
     */
   int deleteById(String id);
}
